Detecting Common Mode Failures in N-Version Software Using Weakest Precondition Analysis
نویسندگان
چکیده
An underlying assumption for N-version programming technique is that independently developed versions would fail in a statistically independent mannel: Howevel; empirical studies have demonstrated that common mode failures can occur even for independently developed versions, and that common mode failures degrade system reliability. In this papel; we demonstrate that the weakest precondition analysis is effective in determining input spaces leading to common mode failures. We applied the weakestprecondition to the Launch Interceptor Programs which were used in several other experiments related to the N-versionprogramming technique. We detected 13 out of 18 fault pairs which have been known to cause common mode failure. These faults were due to logicaljaws in program design. Although the weakest precondition analysis may be labor-intensive since they are applied manually, our results convincingly demonstrate that it is effective for identifying input spaces causing common mode failures and further improving the reliability of N-version software.
منابع مشابه
Reliability assessment of N-version software fault tolerant system with common mode failures
Common mode failures create the major impact on the system reliability in many real time systems. In this paper, we incorporate the concept of common mode faults (CMF) for the reliability prediction of fault tolerant software system consisting of N-version with different failure characteristics. The common mode faults may occur simultaneously in two or more versions due to faults in the common ...
متن کاملReducing uncertainty about common-mode failures
Multi-version programming is employed in faulttolerant computer systems in order to provide protection against common-mode failure in software. Multi-version programming involves building diverse software implementations of critical functions. The premise of building diverse versions is that the likelihood of a programming error in one version causing a failure in an identical manner as an erro...
متن کاملUsing Weakest Precondition for Software Process Model Reuse
This paper describes a method to determine the possibility of combining two or more process models using an approach similar to the proof of (partial) correctness of algorithms by determining the weakest precondition and postcondition. This method also allows the analysis of process models with regard to their semantic correctness. The approach is described and demonstrated on an example process.
متن کاملProgramming Research Group a Weakest Precondition Semantics for Z (extended Version) a Weakest Precondition Semantics for Z (extended Version)
The lack of a method for developing programs from Z speciications is a diiculty widely recognised. In response to this problem, diierent approaches to the integration of Z with a reenement calculus have been proposed. These programming techniques are promising, but, as far as we know, have not been formalised. Since they are based on reenement calculi formalised in terms of weakest precondition...
متن کاملWeakest Preconditions for High-Level Programs (Long Version)
In proof theory, a standard method for showing the correctness of a program w.r.t. given preand postconditions is to construct a weakest precondition and to show that the precondition implies the weakest precondition. In this paper, graph programs in the sense of Habel and Plump 2001 are extended to programs over high-level rules with application conditions, a formal definition of weakest preco...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1997